<?php
namespace app\admin\controller;

use app\admin\controller\Base;
use think\Db;

class System extends Base
{
    /**
     * 系统参数
     * @return mixed
     */
    public function SystemConfig(){
        $Config = Config();
        $this->assign('Config',$Config);
        if(IsPost()){
            $Data = Param();
            if(Db::name('system_config')->where(['id'=>1])->update($Data)){
                return ['status'=>1,'message'=>'保存成功'];
            }else{
                return ['status'=>0,'message'=>'未作修改'];
            }
        }
        return $this->fetch('SystemConfig');
    }

    /**
     * 轮播图列表
     * @return mixed
     * @throws \think\Exception
     * @throws \think\db\exception\DataNotFoundException
     * @throws \think\db\exception\ModelNotFoundException
     * @throws \think\exception\DbException
     */
    public function BannerList(){
        //总记录条数
        $Count = Db::name('banner')->count();
        $this->assign('Count',$Count);

        //等级列表
        $BannerList = Db::name('banner')->select();
        $this->assign('BannerList',$BannerList);

        return $this->fetch('BannerList');
    }

    /**
     * 添加轮播图
     * @return mixed
     */
    public function BannerAdd(){
        //Post请求操作
        if(IsPost()){
            //请求数据
            $Data = Param();
            //表中添加数据
            if(Db::name('banner')->insert($Data)){
                return ['status'=>1,'message'=>'添加成功'];
            }else{
                return ['status'=>0,'message'=>'系统错误，请重试'];
            }
        }
        return $this->fetch('BannerAdd');
    }

    /**
     * 修改轮播图
     * @return mixed
     */
    public function BannerEdit(){
        $Banner = Db::name('banner')->where(['id'=>Param('id')])->find();
        $this->assign('Banner',$Banner);

        //Post请求操作
        if(IsPost()){
            //请求数据
            $Data = Param();
            //表中修改数据
            if(Db::name('banner')->where(['id'=>$Data['id']])->update($Data)){
                return ['status'=>1,'message'=>'修改成功'];
            }else{
                return ['status'=>0,'message'=>'无修改内容'];
            }
        }
        return $this->fetch('BannerEdit');
    }

    /**
     * 轮播图删除
     * @return array
     * @throws \think\Exception
     * @throws \think\exception\PDOException
     */
    public function BannerDelete(){
        //Post请求操作
        if(IsPost()){
            //删除表中数据
            if(Db::name('banner')->where(['id'=>Param('id')])->delete()){
                return ['status'=>1,'message'=>'删除成功'];
            }else{
                return ['status'=>0,'message'=>'系统错误，请重试'];
            }
        }
    }

    /**
     * 多图上传
     */
    public function forUpload()
    {
        // 获取表单上传文件 例如上传了001.jpg
        $file = request()->file('image');

        // 移动到框架应用根目录/public/uploads/ 目录下
        $info = $file->validate(['size'=>1567800000,'ext'=>'jpg,png,gif'])->move(ROOT_PATH . 'public' . DS . 'uploads/banner');

        if($info){
            //返回上传图片路径
            $path = "/uploads/banner/".$info->getSaveName();
            return ['status'=>1,'message'=>$path];
        }else{
            // 上传失败获取错误信息
            return ['status'=>0,'message'=>$file->getError()];
        }
    }
    
    //邮费设置
    public function youfei(){
        //总记录条数
        $Count = Db::name('youfei')->count();
        $this->assign('Count',$Count);

        //等级列表
        $BannerList = Db::name('youfei')->select();
        $this->assign('BannerList',$BannerList);

        return $this->fetch('youfei');
    }
    
    //邮费修改
    public function youfeiedit(){
        $Banner = Db::name('youfei')->where(['id'=>Param('id')])->find();
        $this->assign('Banner',$Banner);

        //Post请求操作
        if(IsPost()){
            //请求数据
            $Data = Param();
            // var_dump($Data);die;
            //表中修改数据
            if(Db::name('youfei')->where(['id'=>$Data['id']])->update($Data) !== false){
                return ['status'=>1,'message'=>'修改成功'];
            }else{
                return ['status'=>0,'message'=>'无修改内容'];
            }
        }
        return $this->fetch('youfeiedit');
    }
}